package com.jweb.dao.account;

import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import com.jweb.orm.entities.user.Account;
import com.jweb.orm.entities.user.Profile;
import com.jweb.orm.entities.user.SignOn;

public class UserAccountDAOImpl extends HibernateDaoSupport implements UserAccountDAO {

	@Override
	public void deleteUserAccount(Account account, Profile profile,
			SignOn signOn) {
		this.getHibernateTemplate().delete(account);
		this.getHibernateTemplate().flush();
		this.getHibernateTemplate().delete(profile);
		this.getHibernateTemplate().flush();
		this.getHibernateTemplate().delete(signOn);
		this.getHibernateTemplate().flush();
		
	}

	@Override
	public void saveOrUpdateUserAll(Account account, Profile profile,
			SignOn signOn) {
		this.getHibernateTemplate().saveOrUpdate(account);
		this.getHibernateTemplate().flush();
		this.getHibernateTemplate().saveOrUpdate(profile);
		this.getHibernateTemplate().flush();
		this.getHibernateTemplate().saveOrUpdate(signOn);
		this.getHibernateTemplate().flush();
		
	}

	@Override
	public void saveOrUpdateUserAccount(Account account) {
		this.getHibernateTemplate().saveOrUpdate(account);
		this.getHibernateTemplate().flush();
		
	}

	@Override
	public void saveOrUpdateUserProfile(Profile profile) {
		this.getHibernateTemplate().saveOrUpdate(profile);
		this.getHibernateTemplate().flush();
		
	}

	@Override
	public void saveOrUpdateUserSignOn(SignOn signOn) {
		this.getHibernateTemplate().saveOrUpdate(signOn);
		this.getHibernateTemplate().flush();
		
	}

}
